<?php

class FileUpload
{
	var $files = array();
	var $dirs  = array();

	function FileUpload($files, $dirs)
	{
		if (is_array($files))
		{
			$this->files = $files;
		} else {
			$this->files[] = $files;
		}
		if (is_array($dirs))
		{
			foreach($dirs as $dir)
			{
				$this->dirs[] = $dir;
			}
		} else {
			$this->dirs[] = $dirs;
		}

		if (count($this->files) < count($this->dirs))
		{
			die("No todos los FILE tienen seteados los directorios a guardar");
		}
	}
	function Upload()
	{
		$error = false;
		$salida = array();
		foreach($this->files as $i => $file)
		{
			$dir = $_SERVER['DOCUMENT_ROOT'] . '/' . $this->dirs[$i];
			if (!file_exists($dir))
			{
				die("Directorio del FILE: ".$file." no existente (".$dir.")");
			}
			if (!move_uploaded_file($_FILES[$file]['tmp_name'], $dir . $_FILES[$file]['name']))
			{
				$error = true;
				echo "<br>- No se pudo subir el archivo al destino correspondiente: FILE $file -> " . $dir . $_FILES[$file]['name'];
			} else {
				$salida[$file] = $_FILES[$file]['name'];
			}
		}

		if ($error)
		{
			die();
		}

		return $salida;
	}
}

?>